﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using RentAWorker.DataAccess.Entities;

namespace RentAWorker.DataAccess.Interfaces
{
    public interface IResourceAccess
    {
        RentResource GetResource(int resourceID);
        IEnumerable<RentResource> GetResources();
        IEnumerable<RentResource> GetResources(string nameSearchPattern);
        IEnumerable<RentResource> GetAvailableResources(string nameSearchPattern,
                                   DateTime fromDate,
                                   DateTime toDate,
                                   int locationId,
                                   int? machineTypeId);

        RentResource UpdateResource(RentResource updateResource);
        RentResource CreateResource(RentResource newResource);
        void DeleteResource(int resourceID);
    }
}
